누구나 자료 구조와 알고리즘 7장 일상적인 코드 속 빅 오 이 경우 데이터 원소 N개에 알고리즘은 3N 단계가 걸린다. 하지만 빅 오는 상수를 무시하므로 O(3N+3)이 아닌 O(N)이라 부른다. 문자 배열로부터 두 글자짜리 모든 문자열 조합을 모으는 알고리즘이다. 바깥 반복문은 배열의 모든 문자를 순회(i)하고, 안쪽 반복문은 i에 대해 배열의 모든 문자를 다시 한 번 순회한다. 만일 세 글자짜리 모든 문자열 조합을 계산하도록 알고리즘을 수정하면 ... 누구나 자료 구조와 알고리즘누구나 자료 구조와 알고리즘 11장 재귀적으로 작성하는 법 반복적으로 한 작업을 실행하는 알고리즘에 재귀 함수를 적용할 수 있다. 이전에 다뤘던 카운트다운 함수를 예시로 들 수 있다. 이 때 인자의 기본값으로 0을 할당해주면 함수를 처음 호출할 때 인덱스 인자를 전달하지 않아도 된다. 팩토리얼 함수를 구현할 때는 1부터 n까지 순차적으로 곱하는 전형적인 반복문을 사용할 수도 있다. 반복문이 아니라 하위 문제에 기반해 팩토리얼을 계산할 수 있다. 즉 ... 알고리즘누구나 자료 구조와 알고리즘누구나 자료 구조와 알고리즘
7장 일상적인 코드 속 빅 오 이 경우 데이터 원소 N개에 알고리즘은 3N 단계가 걸린다. 하지만 빅 오는 상수를 무시하므로 O(3N+3)이 아닌 O(N)이라 부른다. 문자 배열로부터 두 글자짜리 모든 문자열 조합을 모으는 알고리즘이다. 바깥 반복문은 배열의 모든 문자를 순회(i)하고, 안쪽 반복문은 i에 대해 배열의 모든 문자를 다시 한 번 순회한다. 만일 세 글자짜리 모든 문자열 조합을 계산하도록 알고리즘을 수정하면 ... 누구나 자료 구조와 알고리즘누구나 자료 구조와 알고리즘 11장 재귀적으로 작성하는 법 반복적으로 한 작업을 실행하는 알고리즘에 재귀 함수를 적용할 수 있다. 이전에 다뤘던 카운트다운 함수를 예시로 들 수 있다. 이 때 인자의 기본값으로 0을 할당해주면 함수를 처음 호출할 때 인덱스 인자를 전달하지 않아도 된다. 팩토리얼 함수를 구현할 때는 1부터 n까지 순차적으로 곱하는 전형적인 반복문을 사용할 수도 있다. 반복문이 아니라 하위 문제에 기반해 팩토리얼을 계산할 수 있다. 즉 ... 알고리즘누구나 자료 구조와 알고리즘누구나 자료 구조와 알고리즘